The present invention relates to software deployment, and particularly to a software deployment system and method for upgrading software without interrupting normal operations.
In the client-server model, clients interact with applications on a server. If an enterprise has a large number of clients requiring synchronous connection with a server, application (software) upgrades on both the server and the clients is complicated.
In product manufacturing, CIM (Computer Integrated Manufacturing) systems plan manufacturing schedules and provide information required by the process. CIM systems have a three-tier architecture including a database, a server and clients. Each client receives related manufacturing information from the server, and controls equipment tools accordingly. During manufacturing, the CIM system supports a large number of clients simultaneously connecting to the server in real time. When an upgrade of the CIM system is required, the new software must be deployed to both the server and the clients, necessitating suspension thereof.
Conventionally, IT (Information Technology) engineers enter the plant and manually restart and download the software to upgrade each computer from a file server. This method is inefficient and time-consuming. Since the CIM system is suspended during software upgrade, equipment tools are halted resulting in held lots (products) and down time for each tool. The held lots must then be recovered after the CIM system upgrade. Additionally, since several computers must download new software from the file server simultaneously, peak request overloads may crash the file server.